Redundant control circuit for an exercise device

ABSTRACT

An exercise device with a redundant monitoring and control circuit integrated within or otherwise in communication with various components of the exercised device to detect and act on real or possible improper operation of the exercise device. A redundant controller may, based on a determination of a potentially out of specification operating condition of the exercise device, transmit one or more control signals to alter (e.g., reduce or remove) power to the motor of the exercise device. The redundant controller may provide a control signal to a motor power gating device to remove power transmitted to the motor from a power source and/or enable an inhibitor line of a motor controller to disconnect main power from the motor. Controlling the motor power gating device and the inhibitor line may ensure that power is removed from the motor even when a conflicting signal is being transmitted to the motor.

CROSS-REFERENCE TO RELATED APPLICATION

This application is related to and claims priority under 35 U.S.C. § 119(e) from U.S. Patent Application No. 63/279,634, filed Nov. 15, 2021, entitled “Redundant Control Circuit for an Exercise Device,” the entire contents of which is incorporated herein by reference for all purposes.

TECHNICAL FIELD

The present disclosure relates to an exercise device, and in particular, to a control circuit of an exercise device that includes redundant control over the operation of the device.

BACKGROUND

The benefit of regular exercise is undisputed. Nonetheless, beginning and maintaining a successful exercise regimen is a challenge for many individuals for a variety of reasons. With busy schedules, simply finding the time to begin an exercise program is a challenge. Then, finding an exercise, or more preferably exercises, is a challenge when folks have insufficient knowledge as to different types of exercises, the benefits of different exercise, and how to perform those exercises. Moreover, with time constraints and a lack of knowledge, it may be challenging to properly track and analyze performance and progress. As a result, there is an ongoing need to develop efficient exercise devices, and it is important to provide ways to easily perform exercises correctly and with an optimal resistance to maximize their results during the limited time available. In an ever-busy world, exercising at home improves the likelihood of staying within an exercise regime. However, exercise equipment is often large and cumbersome, making home-based equipment unappealing to many potential users.

It is with these observations in mind, among others, that aspects of the present disclosure were concerned and developed.

SUMMARY

Embodiments of the disclosure concern a method for controlling an exercise device. The method may include the operations of receiving a sensor measurement of an aspect of the exercise device, receiving an instruction for controlling a motor controller in electrical communication with a motor, and determining, based on either the measurement or the instruction, a malfunction of a component of the exercise device. The method may further include generating, in response to the determined malfunction, a first control signal to disconnect a power source from the motor controller, and generating, in response to the determined malfunction, a second control signal to a power inhibit input to the motor controller, wherein activation of the inhibit input removes a power signal to the motor.

Another embodiment of the disclosure concerns a control circuit for an exercise device comprising a motor controller in electrical communication between a power source and a motor, the motor translating a power signal from the power source to cause the motor to generate a force on a cable of the exercise device, a power gating device in electrical communication between the power source and the motor controller, the power gating device comprising a switch to remove, in response to a disconnect signal, disconnect the power source from the motor controller, and a second controller comprising a processor and a computer-readable medium storing instructions. When those instructions are executed, the processor may determine, based on either a measurement associated with an output of the motor or an instruction transmitted to the motor controller from a circuit controller, a malfunction of the exercise device and generate, in response to the determined malfunction, a first control signal to the power gating device to disconnect the power source from the motor controller and a second control signal to a power inhibit input to the motor controller to inhibit a power signal to the motor from the motor controller.

Yet another embodiment of the disclosure concerns a controller of an exercise device executing instructions to provide redundant control of the exercise device. The controller may determine a malfunction operation of a component of the exercise device, generate, in response to the determined malfunction operation, a first control signal to disconnect a power source from a motor controller in electrical communication with and providing a power signal to a motor, and generate, in response to the determined malfunction operation, a second control signal to a power inhibit input to the motor controller, wherein activation of the power inhibit input removes the power signal to the motor.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other objects, features, and advantages of the present disclosure set forth herein should be apparent from the following description of particular embodiments of those inventive concepts, as illustrated in the accompanying drawings. The drawings depict only typical embodiments of the present disclosure and, therefore, are not to be considered limiting in scope.

FIG. 1A is a front perspective view of an exercise device, in accordance with various embodiments.

FIG. 1B is a perspective view of the exercise device of FIG. 1A with a housing partially removed to illustrate internal components of the exercise device, in accordance with various embodiments.

FIG. 1C is a diagram of an operating environment including the exercise device of FIG. 1A in which functions of the exercise device are supported by a user computing device and a remote fitness platform, in accordance with various embodiments.

FIG. 2 is a block diagram of a control circuit for controlling the motor of the exercise device, the control circuit including a redundant circuit, in accordance with various embodiments.

FIG. 3 is a block diagram of a redundant controller of an exercise device to provide redundant control of a motor of the exercise device, in accordance with various embodiments.

FIG. 4 is a flowchart of a method for providing redundant control to control of a motor of an exercise device, in accordance with various embodiments.

FIG. 5 is a system diagram of an example computing system that may implement various systems and methods discussed herein, in accordance with various embodiments.

DETAILED DESCRIPTION

Aspects of the present disclosure involve systems, circuit, devices, and methods for redundant monitoring and control of a motor associated with an exercise device. In particular, an exercise device may utilize a motor to provide resistive force or movement that a user counteracts in order to exercise. In one possible arrangement, the exercise device and motor control may simulate the forces provided from a conventional cable driven weight-stack. Regardless, a motor of an exercise device of the present disclosure may be controlled by a microcontroller or other control circuitry to apply a resistive force or retraction movement that is countered by a user pulling against the retraction force of the motor. Generally speaking, a cable is spooled about a motor axle, and the motor applies a retraction force against a user pulling on the cable. As is described in further detail below, the motor is positioned within a housing and the cable extends from the housing, the cable attached to a handle or other piece of equipment through which a user may apply a counterforce against whatever force is being provided by the motor. For example, the microcontroller may execute a program that applies a force of 50 pounds. When a user opposes the force with 50 pounds or more to overcome the force from the motor, the cable is withdrawn.

Since the system is controlled by various electrical and computational components, it may experience problems typical of any other electrical or computing environment. Thus, in order to maintain operations within known valid operating conditions, the exercise device may include redundant monitoring and operational systems. In one example, the redundant systems are configured to confirm proper operation of the device and automatically alter operation when improper operation is detected or the system cannot confirm proper operation. For example, the system may detect when a commanded force from the motor controller does not match a set force or a user requested force. The mismatch may be caused by any number of possible errors or failures in the system, and the redundant system will take action based on the mismatch and by implicitly assuming that a mismatch is reflective of an improper operating condition.

The exercise device may therefore include a redundant monitoring and control circuit integrated within or otherwise in communication with various components of the exercised device, including a primary control circuit or microcontroller and various aspects of the motor, to detect and act on real or possible improper operation of the exercise device. The redundant system may also monitor different attributes of the primary control system so that it is able to detect improper operation even when proper control signals are generated. In one implementation, the control circuit may include a redundant controller, such as a microcontroller or other control circuit, that executes one or more programs or applications that prevents an improper operating condition of the exercise device. The redundant controller may monitor operating parameters of the motor and/or other components of the exercise device to determine an output of the motor. In some instances, the redundant controller may utilize one or more physics models to determine the effect on the cable in response to the output of the motor. For example, the redundant controller may receive a current in and/or current out of the motor from one or more current sensors of the control circuit. With the current in, current out, and known parameters of the motor, the redundant controller may determine or calculate an estimated output force on the cable of the exercise device. The output force may then be compared to the commanded output force to determine a potential difference between the commanded output force and the estimated output force. In another example, the redundant controller may receive a power source voltage to the motor from a voltage sensor and, from the power source voltage and other circuit measurements, calculate a power into and/or power provided by the motor, and compare the derived values against those commanded. In another instance, the redundant controller may determine or receive a length or extension of the cable and compare the same to what was commanded. The system may similarly compute the rate at which the cable is being extracted. In still other instances, the redundant controller may determine a frequency and/or magnitude of force changes applied by the motor. Large changes in the force applied by the motor or frequently occurring changes in the forces applied by the motor may indicate a malfunctioning control system due to any out of normal operating condition, including but not limited to an improperly operating component, a lost signal, a faulty sensor, inability to accurately read a condition, etc.

The redundant controller may, based on a determination of a potentially out of specification operating condition of the exercise device, transmit one or more control signals to alter (e.g., reduce or remove) power to the motor of the exercise device. In one example, the redundant controller may provide a control signal to a motor power gating device to remove power transmitted to the motor from a power source. In another example, the redundant controller may enable an inhibitor line of a motor controller to disconnect main power from the motor. In still other examples, the redundant controller may control the motor power gating device and enable the inhibitor line of the motor controller to remove power to the motor. Controlling the motor power gating device and the inhibitor line may ensure that power is removed from the motor even when a conflicting signal from another system (e.g., a main system controller or the motor controller) is being transmitted to the motor. Control of the motor power gating device and/or the inhibitor line may be based on an output of the physics model executed by the redundant controller indicative of a potentially out of specification operating condition of the exercise device. In another example, control of the motor power gating device and/or the inhibitor line by the redundant controller may be based on a detected operation of the motor and/or exercise device that is different from an expected operation of the motor. For example, based on control signals generated by the main system controller and snooped or otherwise received by the redundant controller, an expected output of the motor may be generated or determined. In circumstances in which a measured output of the motor differs from an expected output of the motor beyond a particular threshold (thereby indicating an out of specification operating condition), the redundant controller may control the motor power gating device and/or the inhibitor line to remove power from the motor preventing the unspecified operating condition. In this manner, the redundant controller may provide a redundant control feature to the control of the exercise device to prevent or minimize a potential injury to the user of the device during use.

Aspects of this disclosure include exercise devices for use in performing various resistance-based exercises. The exercise devices include a step-style housing having a top through which a motor-driven cable extends. A user can equip the end of the cable with a grip, collar, belt, or similar component to facilitate performance of different exercises. During operation, the motor supplies resistance by counteracting extension of the cable by the user and/or forcibly retracting the cable against the user. The exercise device may include or be in communication with computing elements configured to control the motor.

The motor replaces weights, bands, and other resistance elements found in conventional exercise equipment. However, the motor can be actively controlled to provide greater variety and flexibility as compared to such resistance elements. For example and among other things, the exercise device may control the motor to supply resistance that automatically varies over a given range of motion (e.g., applying a different resistance during the concentric versus eccentric phase of an exercise) or provides a constant resistance that eliminates inertial effects common with conventional resistance elements.

The exercise device may include or be communicably coupled to various devices for controlling the exercise device and providing feedback to a user. For example, the exercise device force may connect to and communicate with a computing device, such as a smartphone, tablet, laptop, smart television, etc. to enable the user to select a workout and/or exercise, adjust exercise parameters (e.g., a range of motion of the exercise, a speed of the exercise, a load, or any other similar parameter), view historical performance data, and the like. In certain implementations, such computing devices may also facilitate streaming of video or other multimedia content (e.g., classes) to guide a user's exercise or to facilitate participation in streaming or real-time interactive classes and competitions. In still other implementations, the exercise platform may be used in conjunction with a gaming platform or other computing device capable of running games or similar interactive software.

Exercise devices of this disclosure may connect to and communicate with each other or to other computing devices over a network, such as the Internet. In one implementation, a cloud-based platform may interact with exercise devices of this disclosure and associated user computing devices (e.g., a user's smartphone) to distribute resistance profiles for exercises, store and update user information, and present tracking information to users and personnel such as gym facility managers, personal trainers, physiotherapists, and others who may be working with a user. The cloud-based computing platform further enables the generation, updating, and storage of content for use with the exercise device including, but not limited to, resistance profiles, workout plans, multimedia content, and the like.

FIG. 1A is a perspective view of an exercise device 100 according to one implementation of the present disclosure. FIG. 1B is a perspective view of exercise platform 100 with an exterior housing 102 and other external components removed to illustrate the internals of exercise platform 100.

Referring to FIG. 1A, exercise platform 100 includes a housing 102 having a top 104 through which a cable 106 passes. In certain implementations, top 104 includes an aperture 120 within which a fairing 122 or similar guide element is disposed to permit multi-directional retraction and extension of cable 106. As shown, cable 106 may end in a handle 108; however, in other implementations, cable 106 ends in a strap, grip, belt, rope loop, or similar component to facilitate performance of different exercises. During performance of an exercise, a user extends cable 106 and/or resists retraction of cable 106 with resistance provided by a motor 110 (shown in FIG. 1B) disposed within housing 102 and coupled to cable 106, e.g., by a cable pulley 112 (also shown in FIG. 1B).

Exercise platform 100 may include a control system (including, e.g., a motor controller, a motor drive, a microprocessor, and/or other related components) for controlling motor 110 and the resistance provided by motor 110. Exercise platform 100 may further include various sensors for providing feedback to the control system to facilitate control of motor 110. For example, in certain implementations, exercise platform 100 may include one or more of a current sensor, a position sensor (e.g., an encoder), an accelerometer, or other sensors for measuring parameters related to motor performance, which can be used in the control and operation of motor 110. In certain implementations, force sensors (e.g., load cells, strain gauges, etc.) incorporated into exercise platform 100 may also supply additional feedback for controlling motor 110.

Motor 110 and the associated motor control components may provide a variety of different resistance profiles depending on the exercise being performed, settings provided by the user, a workout plan of the user, and the like. For example, motor 110 may provide constant resistance over a complete range of motion for an exercise. As another example, motor 110 may provide a first resistance during a first phase of an exercise (e.g., a concentric phase of the exercise) and a second, different, resistance during a second phase of the exercise (e.g., an eccentric phase of the exercise). As yet another example, motor 110 may vary resistance over any or all phases of an exercise.

By way of example, a user of exercise platform 100 may perform a squat motion while holding handle 108 in front of his or her body and standing on top 104. In one example, motor 110 may supply constant resistance (e.g., 100 lb of resistance) during both the eccentric (descending) and concentric (ascending) phases of the squat. In another example, motor 110 may supply a first resistance (e.g., 50 lb of resistance) during the eccentric phase of the squat but subsequently increase resistance (e.g., to 100 lb) during the concentric phase of the squat, thereby emphasizing the concentric phase. In yet another example, motor 110 may supply relatively low resistance when the user is at depth but supply increased resistance as the user reaches an upright position. Among other things, such varying of resistance may encourage a full and safe range of motion by reducing load in typically problematic points of the exercise. As a final and non-limiting example, motor 110 may supply a random or otherwise dynamically varying resistance (e.g., a “noisy” load that ranges from 40 lb to 60 lb) over some or all of the squat motion, thereby forcing the user to recruit a broader range of stabilizing muscles than if a constant resistance were to be applied by motor 110.

As illustrated in FIG. 1A, exercise platform 100 may include various other features. For example, housing 102 may include a grip 124 or similar feature to facilitate transportation of exercise platform 100. Exercise platform 100 may also include an electronics panel 126. Among other things, electronics panel 126 may include one or more ports to facilitate communication between exercise platform 100 and other computing devices, a display (e.g., an LED or LCD screen) for providing information to a user, one or more lights to indicate status or operation of exercise platform (e.g., an “ON/OFF” light indicator), one or more switches (e.g., a power switch), and the like. In at least certain implementations, exercise platform 100 may include a power source such that exercise platform 100 may be optionally operated without being plugged into a wall outlet or similar power source. In such cases, exercise platform 100 may further include a charging port or similar plug (not illustrated) to facilitate charging of the power source or otherwise powering exercise platform 100.

Referring to FIG. 1B, an isometric view of exercise platform 100 is provided with portions of housing 102 removed for clarity and to reveal internal components of exercise platform 100. As previously discussed, exercise platform 100 includes motor 110, which may be coupled to and drive a cable pulley 112 to control retraction and extension of cable 106.

Exercise platform 100 includes an internal frame 114 that provides structural integrity to exercise platform 100 and structure for coupling to and supporting internal components of exercise platform 100. As illustrated, internal frame 114 includes a web 116 extending transversely through base 102. In at least certain implementations, motor 110 is coupled to and supported by web 116 such that cable pulley 112 aligns with aperture 120 of top 104. Internal frame 114 may include additional elements, such as transvers member 118 to provide additional structural integrity and/or mounting locations for other components of exercise platform 100.

FIG. 1C illustrates an example operation environment 150 including exercise platform 100. In at least certain implementations, exercise platform 100 communicates with one or more external computing devices, such as computing device 152. Although illustrated as a smartphone, computing device 152 may be any suitable computing device capable of connecting to and communicating with a communication module or similar communication component of exercise platform 100 through a wired or wireless connection.

Computing device 152 may execute an application for interfacing with and controlling exercise platform 100. For example, the application executed on computing device 152 may permit a user of computing device to change a resistance of exercise platform 100 or a resistance profile executed by exercise platform. In other implementations, the application may allow the user to select an exercise or workout routine the automatically reconfigures exercise platform 100 as the user progresses through the exercise or workout routine. During operation, exercise platform 100 may transmit data, such as position data for cable 106, such that the application may track successful completion of exercises and workout routines by the user.

One or both of exercise platform 100 and computing device 152 may further communicate with a fitness platform 154 over a network 156, such as the Internet. Among other things, fitness platform 154 may provide a portal, website, application data, etc. through which a user of computing device 152 may access information and content related to use of exercise platform 100. For example, fitness platform 154 may include a repository or similar source of video, text, or other content directed to use of exercise platform 100 and/or fitness and exercise more generally. As another example, fitness platform 154 may support user accounts such that a user of the computing device 152 and/or the exercise platform 100 may track their historic exercise performance and improvement, create and track workouts and fitness plans, participate in leaderboards, and other community-related features, and the like. In at least certain implementations, fitness platform 154 may facilitate real-time classes, competitions, and/or similar group activities that simultaneously support multiple users of exercise devices. For example, in the context of a class, a live streamed video of an instructor may be provided by fitness platform 154 to multiple users and each exercise device (or a related/connected computing device) may in turn provide exercise data (e.g., resistance level, speed, rep completion, etc.) for maintaining and populating a class leaderboard or similar display of participant performance.

FIG. 2 is a block diagram of a control circuit 200 for controlling a motor 208 of an exercise device, the control circuit including a redundant control circuit portion. In particular, the control circuit 200 includes a motor 208 that is mechanically connected to the cable 106 to apply a force on the cable to simulate a weight stack, as described above. The motor 208 may be powered by a power source 202, which may be a conventional wall outlet. Alternatively or additionally, the power source 202 may be a battery or any other type of power source. One or more controllers or other components of the circuit 200 may be configured to control the amount of power that is provided to the motor 208. For example, a motor controller 206 may electrically connect to the motor 208 to control operation of the motor through one or more control signals and/or by providing a power signal, including providing a requested power signal to the motor to cause the motor to disconnect from the power source 202. In some instances, the motor controller 206 may receive one or more signals from a main controller or main MCU 210. The functions of the main controller and main MCU 210 may be embodied in the same processing unit or in distinct units. Similarly, the functions of a redundant controller 220 may be integrated in the same processing unit; however, for redundancy, the redundant controller is in a distinct processing unit from the others. The main MCU 210 may be a microcontroller or other type of integrated circuit (IC) device. The main MCU 210 may execute one or more programs to determine a requested output of the motor 208 and provide signals to the motor controller 206 to generate the requested output. For example, the main MCU 210 may receive, such as through a user interface or user device, a request for an output of the motor 208 corresponding to a 50 lb. resistance on the cable. The main MCU 210 may generate and transmit one or more signals to the motor controller 206 indicating the requested output of the motor 208. The motor controller 206 may, in response to the one or more signals, control a power signal from the power source 202 to the motor 208 to generate the requested output. For example, a particular voltage and/or current (together referred to the as a power signal) that causes the motor to generate an output corresponding to 50 lbs. of resistance may be provided by the motor controller 206 to the motor 208 in response to the request by the main MCU 210. Higher or lower power signals to the motor 208 may similarly be requested by the main MCU 210 through the motor controller 206 in response to other inputs received at the main MCU. In this manner, the main MCU 210 may control the motor controller 206 to generate a requested or expected output of the motor 208 to operate the exercise device.

In one implementation, a motor power gate 204 may be electrically connected between the power source 202 and the motor controller 206 and may be configured to, based on one or more input signals, connect or disconnect the power source 202 to the motor controller 206. The motor power gate 204 may be a switching device, such as a field effect transistor (FET) or other type of transistor, that is toggled from an open position (to disconnect the power source 202 from the motor controller 206) to a closed position (connecting the power source to the motor controller). In conjunction with the motor controller 206, the motor power gate 204 may be controlled to disconnect the motor 208 from power source 202. Use of the motor power gate 204 to connect or disconnect the power source 202 from the motor controller 206 is discussed in more detail below.

Through the circuit 200, power to the motor 208 (and thus control over the output of the motor and resistance on the cable of the exercise device) is managed by the main MCU 210 and the motor controller 206. However, a malfunction to the main MCU 210, the motor controller 206, or other components of the control circuit 200 of the exercise may cause an out of specification or otherwise improper operating condition. For example, microcontrollers can become deadlocked, may get stuck in an execution loop, may include code errors in executed programs, etc. that may cause the microcontroller to malfunction. Improper operation of the exercise device due to such errors may have various results. For example, a malfunction of the main MCU 210 may cause one or more signals to the motor controller 206 to improperly increase or decrease the output of the motor 208, resulting in an unexpected resistance force. In another example, the motor controller 206 may malfunction and provide a higher than requested power signal to the motor, resulting in some form improper operation of the exercise device. Thus, the control circuit 200 may include one or more redundant features, including a redundant controller 220 to prevent or minimize the likelihood of an improper operation of the motor 208.

In one implementation, the redundant controller 220 may be a microcontroller, other IC controller device, or any type of computing device or circuit that may execute one or more instructions of a program. In general, the redundant controller 220 may execute the one or more instructions to respond to a detected or measured potentially improper operation of the exercise device and remove a power signal from the power source 202 to the motor 208. For example, the redundant controller 220 may be electrically connected to and control the motor power gate 204 to remove the power source 202 from connection to the motor controller 206. In one implementation, the redundant controller 220 and the main MCU 210 may connect to the motor power gate 204 through a AND logic gate device 214. In this implementation, the redundant controller 220 and the main MCU 210 must both provide a control signal to the motor power gate 204 to cause connection of the power source 202 to the motor controller 206 such that a disconnect signal from either the main MCU or the redundant controller operates to remove the power source 202 from the motor controller 206. In still another implementation, a power button 212 or switch may also be connected as an input to the logic AND gate device 214 as a third control of the motor power gate 204. In such an implementation, each of the power button 212, the redundant controller 220, and the main MCU 210 must be in agreement on the connection of the power source 202 to the motor controller 206 through the motor power gate 204. If any of the power button 212 (through an activation by a user of the exercise device), the main MCU 210 (in response to an input from a user or a detected operational state of the device), or the redundant controller 220 (in response to a detected potentially improper operating condition) transmit a control signal to the motor power gate 204, the power source 202 may be disconnected from the motor controller 206 such that the motor 208 may not receive a power signal from the power source.

In some instances, however, the motor power gate 204 may also malfunction such that the power source 202 remains connected to the motor controller 206 despite one or more of the power button 212, the main MCU 210, or the redundant controller 220 controlling the motor power gate 204 to open and disconnect the power source 202 from the motor controller 206. Therefore, the redundant controller 220 may also be connected to an inhibitor line or input of the motor controller 206 over which an inhibitor signal 218 may be provided to the motor controller. When enabled, the inhibitor signal 218 may cause the motor controller 206 to inhibit the power signal to the motor 208, effectively disconnecting the motor from the power signal of the power source 202. Enabling the inhibitor signal 218 may be performed by the redundant controller 220 in response to a detected improper operating condition of the exercise device. For example, the redundant controller 220 may receive one or more instructions from the main MCU 210, such as the instructions provided to the motor controller 206 to control the power signal to the motor 208. Based on the received instructions, the redundant controller 220 may determine an expected output of the motor 208. In addition, the redundant controller 220 may receive measurements from one or more components of the control circuit 200, such as current meter 216 connected to the output of the motor 208 and measuring the output current of the motor. Through an analysis of the received circuit measurements (which may also include current into the motor, voltage of the power signal from the power source 202, voltage into and out of the motor 208, and the like), the redundant controller 220 may determine that the motor is creating a potentially improper operating condition of the exercise device and, concurrently or separately, cause the motor power gate 204 to disconnect the power source 202 from the motor controller 206 and enable the inhibitor signal 218 to the motor controller. Either or both of these features may disconnect the power source 202 from the motor 208, thereby operating the exercise device in a proper condition despite one or more of the components of the circuit 200 malfunctioning.

FIG. 3 is a block diagram of the redundant controller 220 of the control circuit 200 discussed above to provide redundant control of a motor 208 of the exercise device. In some instances, the redundant controller 220 may include a redundant controller program 306 executed to perform one or more of the operations described herein. For example, the redundant controller 220 may be a microcontroller or other computing device onto which the redundant controller program 306 may be loaded and executed. In particular, the redundant controller program 306 may include computer executable instructions stored in a non-transitory computer readable media 304 (e.g., memory) and executed on a processing system 302 of the redundant controller 220 or other type of computing system, such as that described below. By way of example and not limitation, non-transitory computer readable medium 304 comprises computer storage media, such as non-transient storage memory, volatile media, nonvolatile media, removable media, and/or non-removable media implemented in a method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data.

The redundant controller program 306 may also utilize a data source 334 of the computer readable media 304 for storage of data and information associated with the redundant controller 220. For example, the redundant controller program 306 may store threshold values or expected exercise device operational values for use in determining an improper operating condition. In general, any data or information utilized by the redundant controller program 306 may be stored and/or retrieved via the data source 334.

The redundant controller program 306 may include several components to perform one or more of the operations described herein. For example, the redundant controller program 306 may include a physics modeler 308 that receives measurements or conditions of the exercise device and calculates one or more physics-based operating conditions of the motor 208 of the device. To facilitate the physics modeler 308, the redundant controller program 306 may include a motor sensors receiver 310 that receives one or more measurements of the motor 208 of the exercise device. For example, the motor sensors receiver 310 of the redundant controller program 306 may receive an output current measurement 312 from current sensor 216 illustrated in FIG. 2 . A similar current sensor may be located at the input to the motor 208 such that an input current 312 to the motor 208 may be obtained. Other motor-based measurements may also be transmitted to the motor sensors receiver 310 from other sensors of the control circuit 200, such as input and/or output voltage to the motor, input and/or output power to the motor, a torque on a driveshaft associated with the motor, and the like. In general, any motor performance measurement may be obtained and provided to the redundant controller program 306 through motor sensors receiver 310. In a similar manner, measurements associated with the power source 202 of the control circuit 200 may be obtained, through various sensors, and provided to the redundant controller program 306 through a power source sensors receiver 314. For example, an output voltage 316 and/or an output current from the power source 202 may be obtained from one or more sensors connected to the output of the power source and provided to the power source sensors receiver 314. Other sensors and measurements of the power source 202, the motor 208, or any other component of the control circuit 200 may be obtained and provided to the redundant controller program 306 in a similar manner.

The physics modeler 308 may utilize the circuit measurements received through the motor sensors receiver 310, the power source sensors receiver 314, and/or any other circuit measurement receiver to calculate or otherwise determine one or more operating conditions of the motor and circuit. For example, the physics modeler 308 may utilize the current and voltage transmitted to the motor 208 to estimate an input power to the motor as the input power equals the input current * input voltage. In a similar manner, an output power of the motor 208 may be calculated. From the input power and the output power, an applied torque of the motor on a driveshaft may be calculated through equation:

τ=(I*V*E*60)/(rpm*2π)

with I equal to the input current, V equal to the input voltage, and E equal to the efficiency of the motor 208. The efficiency of the motor 208 may be calculated from the output power/input power or may be provided to the physics modeler 308 through an input to the redundant controller program 306. Other physics-based calculations of the operation of the motor 208 may also be determined from the received circuit measurements, such as output force of the motor, rotation speed of the drive shaft, and the like.

The redundant controller program 306 may also include an encoder receiver 314 to receive a cable position indicator 320 corresponding to a starting position of the cable of the exercise device. In particular, the exercise device may include an encoder that tracks a position of the cable (or a length of extension of the cable from the platform). The exercise device may provide for a user to extend the cable to a particular height with a minimum amount of force on the cable for certain exercises (such as a standing curl exercise). To track the extension of the cable from the pulley, an encoder may be in communication with the pulley and track a relative position or rotation of the pulley as it corresponds a length of extension of the cable of the device. Other techniques for determining a length of extension of the cable of the exercise device may also or alternatively be provided to the redundant controller program 306. Through the encoder receiver 318, therefore, the redundant controller program 306 may determine a relative position of the cable to the base of the exercise device.

The physics modeler 308 may also utilize the cable position 320 to calculate or otherwise determine other physical characteristics of the operation of the exercise device. For example, with the calculated output power of the motor 208 determined above and the cable position 320, the physics modeler may estimate an energy output of the motor on the cable of the exercise device. This output energy on the cable may be compared to one or more threshold values to determine if the applied energy on the cable exceeds a safe threshold value. In another example, the physics modeler 308 may estimate that the motor 208 is applying a force on the cable that exceeds the starting position of the cable for a selected exercise. The redundant controller program 306 may determine an applied force on the cable past the starting position for the exercise may indicate a malfunction of the device or a type of improper operating condition for the device. Although discussed herein as utilizing motor performance measurements 312, power source performance measurements 316, and cable position 320, the physics modeler 308 may use any measurement of the operation of the exercise device to determine or calculate any characteristic or operational condition of the exercise device in order to determine a potential dangerous condition of the device.

In yet another example, the redundant controller program 306 may receive one or more commands 324 or other transmissions from the main MCU 210 at a main MCU commands receiver 322. In one implementation, the main MCU 210 may transmit commands, such as commands to the motor controller 206, on a shared communication bus of the control circuit 200. The redundant controller 220 may connect to the shared communication bus and snoop the commands 324 from the main MCU 210 placed on the bus through the main MCU commands receiver 322. In another implementation, the main MCU may be configured to transmit commands 324 to the motor controller 206 or any other component of the control circuit 200 to the main MCU commands receiver 322. Regardless, the redundant controller program 306 may receive one or more of the control commands 324 issued by the main MCU 210. As explained in more detail below, the redundant controller program 306 may utilize the received main MCU commands 324 to determine an expected motor 208 output. For example, the redundant controller program 306 may receive a main MCU command 324 requesting the motor controller 206 to generate a motor 208 output corresponding to 50 lbs. of force. As such, the redundant controller program 306 may include instructions or programs similar to those of the motor controller 206 to translate the receive main MCU commands 324 into instructions. In general, any command 324 issued by the main MCU 210 may be received at the redundant controller program 306 through main MCU command receiver 322.

In addition to receiving measurements and signals associated with the control circuit 200, the redundant controller program 306 may also generate one or more control signals. For example, the redundant controller program 306 may include a motor power gate controller 326 configured to generate a control signal for the motor power gate 204. As explained above, the motor power gate 204 may be operated to connect or disconnect the power source 202 from the motor controller 206. Circumstances in which the redundant controller program 306 determines that an improper operating condition is possible may cause the motor power gate controller 326 to transmit a motor power gate signal 328 to disconnect the power source 202 from the motor controller 206 through control of the motor power gate 204. In a similar manner, the redundant controller program 306 may include a power inhibitor controller 330 configured to generate a control signal 332 for the inhibitor line of the motor controller 206. The motor controller 206 may include an inhibitor line that, when enabled, causes the motor controller to cease providing a power signal to the motor 208. Circumstances in which the redundant controller program 306 determines that an improper operating condition is possible may cause the power inhibitor controller 330 to transmit a power inhibitor signal 332 to remove power to the power source 202 and return the exercise device to a safe operating condition.

Turning now to FIG. 4 , a method 400 for providing redundant control of a motor 208 of an exercise device is illustrated. In some instances, the operations of the method 400 may be executed or otherwise performed by the redundant controller 220 of the control circuit 200 for the exercise device. In other instances, some of the operations may be performed by other components of the control circuit 200, such as the main MCU 210 or the motor controller 206. The operations may be performed through execution of one or more instructions stored with the components or separate from the components. In one particular implementation, the components may include a circuit designed to perform one or more of the described operations of the method.

Beginning in operation 402, the redundant controller 220 may determine one or more operation parameters of the motor 208 based on instructions provided by the main MCU 210. For example, the redundant controller 220 may receive main MCU commands 324 via main MCU commands receiver 322 and interpret the commands to determine a requested operational output of the motor 208. For example, the main MCU commands 324 may indicate the main MCU is requesting the motor controller 206 to cause the motor 208 to generate 50 lbs. of force on the cable of the exercise device and/or retract the cable at a certain rate. In some instances, the main MCU commands 324 may also correspond to a position of the cable as indicated by the position encoder of the exercise device. The position encoder value 320 may also be received at the redundant controller 220 to determine a starting position of the cable at which the requested force on the cable is to be applied by the motor controller 206. In one implementation, the main MCU commands 324 and/or the position encoder value 320 may be obtained from a shared communication bus (e.g., a CAN bus) between two or more of the components of the control circuit 200.

Through the main MCU commands 324 and/or cable position information 320, the redundant controller 220 may determine expected motor output parameters or performance characteristics in operation 404. For example, the redundant controller 220 may determine an expected output current of the motor 208 based an expected input current to generate the requested force on the cable. The controller may also determine an efficiency of the motor. In another example, the physics modeler 308 of the redundant controller 220 may generate an expected output force from the motor 208 and/or an output energy applied to the cable based on the MCU commands 324 and/or the cable position information 320. In this manner, the redundant controller 220 may establish a benchmark of an expected motor 208 performance for use in comparing to a measured motor performance for detecting potentially improper operating conditions.

In operation 406, the redundant controller 220 may calculate or otherwise determine the effect of a motor 208 output on the cable or other components of the exercise device. For example, the motor controller 206 may provide a controlled power signal to the motor 208 to control the motor in response to the requested force. This may occur during use of the exercise device by a user to provide a requested force on the cable of the device 100. One or more sensors of the control circuit 200 may provide measurements of the control circuit operation and, in particular, the output of the motor 208. In one example, one or more current and/or voltage sensors may be integrated into the control circuit 200 to provide the various circuit measurements. The redundant controller 220 may receive the measured values through the motor sensors receiver 310, the power source sensors receiver 314, or through any other receiver of the redundant controller. In another example, the main MCU 210 may receive one or more of the circuit measurements or otherwise be in communication with one or more sensors of the circuit. The redundant controller 220 may, in such circumstances, obtain the circuit measurements from the main MCU 210, directly, from the communication bus of the circuit 200, or through another communication technique. Further, the redundant controller 220 may, utilizing the physics modeler 308 as described above, calculate one or more effects on the exercise device based on the received circuit measurements. For example, based on a measured input current and/or output current to the motor 208, the redundant controller 220 may calculate a force applied to the cable of the device by the motor. In another example, the physics modeler 308 may calculate or otherwise estimate kinetic energy supplied by the motor 208 to the cable.

In operation 408, the redundant controller 220 may determine if an output of the physics modeler 308 indicates an improper operation of the exercise unit based on the measured performance of the motor 208 and/or control circuit 200. For example, the redundant controller 220 may store one or more threshold values corresponding to an improper operating condition of the exercise unit. The threshold values may or may not correspond to an actual requested force from the main MCU 210 but may alternatively be related to the various different values discussed above. An improper operating condition may be determined if an output of the physics modeler 308 exceeds a stored threshold value. For example, the redundant controller 220 may store an upper output force threshold value of 200 lbs. on the cable as an improper operating condition for the exercise unit. So, if the redundant controller detects that more than 200 pounds of force is being commanded, the power being sent to power the motor is indicative of more than 200 pounds, etc., then, the redundant controller detects an improper operating condition. The system may set a threshold and also allow for some error in the threshold, where for example 205 pounds exceeds the threshold but is considered within specification if 5 pounds of error is acceptable. In another example, based on the received measurements from the operation of the control circuit 200 (such as output current from the motor 208), the physic modeler 308 may indicate that the motor is applying 250 lbs. of force on the cable of the exercise device. By exceeding the threshold value for force applied to the cable, the calculated force based on the measured performance of the motor 208 indicates an improper operation of the unit. In another example, an input energy to the motor 208 from the power source 202 may be calculated by the physics modeler 308 and compared to an output energy from the motor based on the measurements obtained from the control circuit 200. If a difference between the input energy and the output energy exceeds a particular threshold value, the redundant controller 220 may determine the operation of the exercise device is improper.

Even if the redundant controller 220 determines that the physics model output does not indicate an improper operation of the exercise device, the controller may determine in operation 410 if the measured performance of the motor is improper compared to the expected performance determined above. For example, although a measured output of the motor 208 may not exceed a stored threshold value for a proper operation of the device, a difference between the measured output and an expected output may exceed a threshold percentage. In one instance, the redundant controller 220 may determine an expected output current value from the motor 208 based on the main MCU commands 324. However, the measured output current value from the motor 208 may exceed the expected value by some threshold percentage (e.g., 50%), exceeding a threshold percentage (e.g., 20%) for output current. In another example, cable position information 320 may be received at the redundant controller from position encoder and a threshold position value may be set based on a determined starting position. However, during operation of the exercise device, the position information may indicate that the operation of the motor 208 is causing the cable position to exceed the starting position, generating a potential improper operating condition. In yet another example, a calculated output force on the cable from the physics modeler 308 may exceed a requested force on the cable to an extent that operation of the exercise device may be considered improper for some users.

If the redundant controller 220 determines an improper operation of the exercise device either through a physics modeler output or through a determined difference in measured output versus expected output of the motor 208, the redundant controller may transmit a control signal to the main power gate 204 in operation 412. As discussed above, the main power gate 204 may be activated to disconnect the power source from the motor controller 206 and avoid the improper operating condition of the exercise device. Further, in operation 414, the redundant controller 220 may enable the inhibit line of the motor controller 206 by energizing the inhibitor signal 218, either in conjunction with or separate from the control of the motor power gate 204. Activation of the inhibitor line may cause the motor controller 206 to cease providing a power signal to the motor 208 or reduce the power signal to some preset value, which may happen immediately or ramp down. Reduction or ramp down may be based on the state of the exercise. For example, the system may reduce the power whenever the total resistance force is below some value, e.g., 50 pounds. In another example, the system may ramp down whenever the total resistance force falls within some range—e.g., 100 to 150 pounds—ramp down reducing the resistance to 10 pounds over a second or some other time frame or other rate.

Through the control of the motor power gate 204 and the inhibitor line of the motor controller 206, a redundant feature may be included in the control circuit 200. In particular, the redundant controller 220 may identify potential improper operating conditions, either through the physics modeler 308 or based on an expected operation of the motor 208 from instructions obtained from the main MCU 210. In response to the determined improper operating condition, the redundant controller 220 may disconnect the power source power signal from the motor 208 through control of the motor power gate 204 and the motor controller 206 to provide a redundant measure. If the redundant controller 220 determines, in operation 410, that an improper operating condition is not detected, the redundant controller may return to operation 404 to continue monitoring the operation of the control circuit to detect an improper condition.

The redundant controller 220 may also be configured to detect other operating conditions that may be improper for certain users. For example, the redundant controller 220 may detect rapid changes in the output of the motor based on measurements obtained from the control circuit 200. Changes to the output of the motor 208 may be measured or determined by the redundant controller to occur at a particular frequency or rate of occurrence. In one implementation, changes that exceed a threshold value, such as a change in output current at or exceeding 5 amps, may be noted by the redundant controller 220 as a change in the output of the motor and changes in the output of the motor that are below the threshold may not be considered as a change in operation by the redundant controller. The redundant controller 220 may determine that a high rate of occurrence, such as changes occurring at a faster rate than every 5 seconds, may indicate an improper operating condition for the exercise device 100. The thresholds for a change in motor 208 output qualifying as a noted change in operation and the rate of change occurrence that results in a determined improper operating condition may be adjustable by the redundant controller 220 or other aspect or component of the device 100. For example, a user of the exercise device 100 may select a program that varies the forces upon the pulley. In such a circumstance, the redundant controller 220 may adjust the threshold values for detecting an improper condition according to the requested program. Such information may be determined through the main MCU 210 instructions received at the redundant controller 220. In this manner, the redundant controller 220 may monitor the circuit operation for rapid changes to the motor output 208 and enact one or more procedures in response while providing for proper exercise programs that may utilize some rapid changes in the motor output.

FIG. 5 an example computing system 500 that may implement various systems and methods discussed herein. The computer system 500 includes one or more computing components in communication via a bus 502. In one implementation, the computing system 500 includes one or more processors 504. The processor 504 can include one or more internal levels of cache (not depicted) and a bus controller or bus interface unit to direct interaction with the bus 502. Main memory 506 may include one or more memory cards and a control circuit (not depicted), or other forms of removable memory, and may store various software applications including computer executable instructions, that when run on the processor 504, implement the methods and systems set out herein. Other forms of memory, such as a storage device 508 and a mass storage device 512, may also be included and accessible, by the processor (or processors) 504 via the bus 502. The storage device 508 and mass storage device 512 can each contain any or all of an electronic document.

The computer system 500 can further include a communications interface 518 by way of which the computer system 500 can connect to networks and receive data useful in executing the methods and system set out herein as well as transmitting information to other devices. The computer system 500 can include an output device 516 by which information is displayed. The computer system 500 can also include an input device 520 by which information is input. Input device 520 can be a scanner, keyboard, and/or other input devices as will be apparent to a person of ordinary skill in the art. The system set forth in FIG. 5 is but one possible example of a computer system that may employ or be configured in accordance with aspects of the present disclosure. It will be appreciated that other non-transitory tangible computer-readable storage media storing computer-executable instructions for implementing the presently disclosed technology on a computing system may be utilized.

In the present disclosure, the methods disclosed may be implemented as sets of instructions or software readable by a device. Further, it is understood that the specific order or hierarchy of steps in the methods disclosed are instances of example approaches. Based upon design preferences, it is understood that the specific order or hierarchy of steps in the methods can be rearranged while remaining within the disclosed subject matter. The accompanying method claims present elements of the various steps in a sample order and are not necessarily meant to be limited to the specific order or hierarchy presented.

The described disclosure may be provided as a computer program product, or software, that may include a computer-readable storage medium having stored thereon instructions, which may be used to program a computer system (or other electronic devices) to perform a process according to the present disclosure. A computer-readable storage medium includes any mechanism for storing information in a form (e.g., software, processing application) readable by a computer. The computer-readable storage medium may include, but is not limited to, optical storage medium (e.g., CD-ROM), magneto-optical storage medium, read only memory (ROM), random access memory (RAM), erasable programmable memory (e.g., EPROM and EEPROM), flash memory, or other types of medium suitable for storing electronic instructions.

In the present disclosure, the methods disclosed may be implemented as sets of instructions or software readable by a device. Further, it is understood that the specific order or hierarchy of steps in the methods disclosed are instances of example approaches. Based upon design preferences, it is understood that the specific order or hierarchy of steps in the method can be rearranged while remaining within the disclosed subject matter. The accompanying method claims present elements of the various steps in a sample order, and are not necessarily meant to be limited to the specific order or hierarchy presented.

The described disclosure may be provided as a computer program product, or software, that may include a non-transitory machine-readable medium having stored thereon instructions, which may be used to program a computer system (or other electronic devices) to perform a process according to the present disclosure. A machine-readable medium includes any mechanism for storing information in a form (e.g., software, processing application) readable by a machine (e.g., a computer). The machine-readable medium may include, but is not limited to, magnetic storage medium, optical storage medium; magneto-optical storage medium, read only memory (ROM); erasable programmable memory (e.g., EPROM and EEPROM); flash memory; or other types of medium suitable for storing electronic instructions.

Embodiments of the present disclosure include various steps, which are described in this specification. The steps may be performed by hardware components or may be embodied in machine-executable instructions, which may be used to cause a general-purpose or special-purpose processor programmed with the instructions to perform the steps. Alternatively, the steps may be performed by a combination of hardware, software and/or firmware.

Various modifications and additions can be made to the exemplary embodiments discussed without departing from the scope of the present invention. For example, while the embodiments described above refer to particular features, the scope of this invention also includes embodiments having different combinations of features and embodiments that do not include all of the described features. Accordingly, the scope of the present invention is intended to embrace all such alternatives, modifications, and variations together with all equivalents thereof.

While specific implementations are discussed, it should be understood that this is done for illustration purposes only. A person skilled in the relevant art will recognize that other components and configurations may be used without parting from the spirit and scope of the disclosure. Thus, the following description and drawings are illustrative and are not to be construed as limiting. Numerous specific details are described to provide a thorough understanding of the disclosure. However, in certain instances, well-known or conventional details are not described in order to avoid obscuring the description. References to one or an embodiment in the present disclosure can be references to the same embodiment or any embodiment; and, such references mean at least one of the embodiments.

Reference to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the disclosure. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Moreover, various features are described which may be exhibited by some embodiments and not by others.

The terms used in this specification generally have their ordinary meanings in the art, within the context of the disclosure, and in the specific context where each term is used. Alternative language and synonyms may be used for any one or more of the terms discussed herein, and no special significance should be placed upon whether or not a term is elaborated or discussed herein. In some cases, synonyms for certain terms are provided. A recital of one or more synonyms does not exclude the use of other synonyms. The use of examples anywhere in this specification including examples of any terms discussed herein is illustrative only, and is not intended to further limit the scope and meaning of the disclosure or of any example term. Likewise, the disclosure is not limited to various embodiments given in this specification.

Without intent to limit the scope of the disclosure, examples of instruments, apparatus, methods and their related results according to the embodiments of the present disclosure are given below. Note that titles or subtitles may be used in the examples for convenience of a reader, which in no way should limit the scope of the disclosure. Unless otherwise defined, technical and scientific terms used herein have the meaning as commonly understood by one of ordinary skill in the art to which this disclosure pertains. In the case of conflict, the present document, including definitions will control.

Additional features and advantages of the disclosure will be set forth in the description which follows, and in part will be obvious from the description, or can be learned by practice of the herein disclosed principles. The features and advantages of the disclosure can be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims. These and other features of the disclosure will become more fully apparent from the following description and appended claims, or can be learned by the practice of the principles set forth herein. 

What is claimed is:
 1. A method for controlling an exercise device, the method comprising: receiving a sensor measurement of an aspect of the exercise device; receiving an instruction for controlling a motor controller in electrical communication with a motor; determining, based on either the measurement or the instruction, a malfunction of a component of the exercise device; generating, in response to the determined malfunction, a first control signal to disconnect a power source from the motor controller; and generating, in response to the determined malfunction, a second control signal to a power inhibit input to the motor controller, wherein activation of the power inhibit input removes a power signal to the motor.
 2. The method of claim 1 wherein the aspect of the exercise device comprises one of an output current of the motor, an input current of the motor, an output voltage of the power source, or an output power of the power source.
 3. The method of claim 1 wherein the motor controller transmits the power signal to the motor in response to the instruction, the motor applying a force on a cable based on the power signal.
 4. The method of claim 3, further comprising: receiving, from a position encoder, a cable position indicator; and generating the first control signal and the second control signal in response to the cable position indicator.
 5. The method of claim 1, further comprising: transmitting the first control signal to a motor power gating device electrically connected between the power source and the motor controller, the motor power gating device comprising a switching element.
 6. The method of claim 1, further comprising: inputting, into a physics model, the measurement of the aspect of the exercise device to calculate a force applied by the motor, wherein determining the malfunction of the component of the exercise device is further based on the calculated force applied by the motor.
 7. The method of claim 1, further comprising: inputting, into a physics model, the measurement of the aspect of the exercise device to calculate an output energy of the motor, wherein determining the malfunction of the component of the exercise device is further based on the calculated output energy of the motor.
 8. The method of claim 1 wherein determining the malfunction of the component of the exercise device comprises: estimating, based on the instruction for controlling the motor controller, an expected aspect of the exercise device; and comparing the measurement of the aspect of the exercise device to the expected aspect.
 9. The method of claim 1 wherein determining the malfunction of the component of the exercise device comprises: detecting a rate of change in the measurement of the aspect of the exercise device over a period of time; and comparing the rate of change to a threshold value.
 10. A control circuit for an exercise device, the control circuit comprising: a motor controller in electrical communication between a power source and a motor, the motor translating a power signal from the power source to cause the motor to generate a force on a cable of the exercise device; a power gating device in electrical communication between the power source and the motor controller, the power gating device comprising a switch to disconnect, in response to a disconnect signal, the power source from the motor controller; and a second controller comprising a processor executing instructions that cause the processor to: determine, based on either a measurement associated with an output of the motor or an instruction transmitted to the motor controller from a circuit controller, a malfunction of the exercise device; and generate, in response to the determined malfunction, a first control signal to the power gating device to disconnect the power source from the motor controller and a second control signal to a power inhibit input to the motor controller to inhibit a power signal to the motor from the motor controller.
 11. The control circuit of claim 10 wherein the measurement associated with the output of the motor comprises one of an output current of the motor, an input current of the motor, an output voltage of the power source, or an output power of the power source.
 12. The control circuit of claim 10 wherein the instructions further cause the processor of the second controller to: receive, from a position encoder, a cable position indication; and generate the first control signal and the second control signal in response to the cable position indication.
 13. The control circuit of claim 10, further comprising: a logic gating device electrically connected between the second controller and the power gating device, the logic gating device receiving the first control signal from the second controller.
 14. The control circuit of claim 13 wherein the logic gating device is an AND logic gating device and further receives the disconnect signal from the circuit controller.
 15. The control circuit of claim 14, further comprising: a power button switch electrically connected to the logic gating device, wherein activation of the power button switch transmits a disconnect power signal to the logic gating device.
 16. The control circuit of claim 10 wherein the instructions further cause the processor of the second controller to: estimate, based on the instruction transmitted to the motor controller, an expected output of the motor; and compare the measurement associated with the output of the motor to the expected output of the motor to determine the malfunction of the exercise device.
 17. The control circuit of claim 10 wherein the instructions further cause the processor of the second controller to: detect a rate of change in the measurement associated with the output of the motor over a period of time; and compare the rate of change to a threshold value to determine the malfunction of the exercise device.
 18. A controller of an exercise device executing instructions to provide second control of the exercise device, the controller: determining a malfunction operation of a component of the exercise device; generating, in response to the determined malfunction operation, a first control signal to disconnect a power source from a motor controller in electrical communication with and providing a power signal to a motor; and generating, in response to the determined malfunction operation, a second control signal to a power inhibit input to the motor controller, wherein activation of the power inhibit input removes the power signal to the motor.
 19. The controller of claim 18 wherein determining the malfunction operation of the exercise device comprises utilizing a physics model of the exercise device to calculate a force applied by the motor.
 20. The controller of claim 18 wherein determining the malfunction operation of the exercise device comprises utilizing a physics model of the exercise device to calculate an output energy of the motor. 